/**
 * @author 20120101 by cxh
 * @class SingleSmsForm
 * @extends Ext.form.FormPanel
 * @description 单笔短信form
 */
SingleSmsForm = Ext.extend(Ext.form.FormPanel, {
			// 构造方法
			constructor : function() {
				// 调用父类的构造方法
				SingleSmsForm.superclass.constructor.call(this, {
							layout : "form", // from布局
							labelWidth : 55, // 宽度
							baseCls : "x-plain", // 统一背景色
							bodyStyle : "padding:8px;", // 样式
							defaults : {
								anchor : "95%" // 锚点布局
							},
							items : [{
										xtype : "textfield",
										fieldLabel : "发送手机号码",
										allowBlank : false, // 不允许为空
										name : "waitsend.phone",
										invalidText : "手机长度不对(请注意全角半角字符)",
										validator : function() {
										 	return /^1\d{10}$/gi.test(this.getValue());
										}	
									}, {
										xtype : "textarea",
										style : "margin-top:5px;",
										allowBlank : false, // 不允许为空
										fieldLabel : "短信内容",
										name : "waitsend.content",
										length : 30
									}]
						})
			},

			/**
			 * 用户角色表单提交方法
			 * 
			 * @param {}
			 *            _url 提交的url
			 */
			mySubmit : function(_url) {
				this.getForm().submit({
							url : _url,
							waitTitle : "数据传输",
							waitMsg : "数据传输中,请稍等...",
							// 成功回调方法
							success : this.onAddSumbit,
							// 失败回调方法
							failure : this.onAddSumbit,
							// 作用域
							scope : this

						})
			},

			/**
			 * 请求成功的回调方法
			 * 
			 * @param {}
			 *            _form
			 * @param {}
			 *            _action
			 */
			onSuccess : function(_form, _action) {
				if (_action.result.success == true) {
					// 调用当前组建的父容器的onCloseWinClick()事件
					this.ownerCt.onCloseWinClick();
					/**
					 * _ssp 是 smsfactory.singlesms.singlesms.jsp
					 * 中SingleSmsPanel类的实例
					 */
					_ssp.getStore().reload();
				}
			},

			/**
			 * 请求失败的回调方法
			 * 
			 * @param {}
			 *            _form
			 * @param {}
			 *            _action
			 */
			onFailure : function(_form, _action) {
				Ext.Msg.alert("系统消息", _action.result["errorMsg"]);
			},

			/**
			 * 新增后回调方法，先提示信息，再提交刷新页面
			 * 
			 * @param {}
			 *            _form
			 * @param {}
			 *            _action
			 */
			onAddSumbit : function(_form, _action) {
				Ext.Msg.alert("系统消息", _action.result["errorMsg"]);
				if (_action.result.success == true) {
					// 调用当前组建的父容器的onCloseWinClick()事件
					this.ownerCt.onCloseWinClick();
					/**
					 * _ssp 是 smsfactory.singlesms.singlesms.jsp
					 * 中SingleSmsPanel类的实例
					 */
					_ssp.getStore().reload();
				}
			},

			/**
			 * 获取form的值
			 * 
			 * @return {}
			 */
			getFormValues : function() {
				return new Ext.data.Record(this.getForm().getValues());
			},

			/**
			 * 给表单设置值
			 * 
			 * @param {}
			 *            _record
			 */
			setFormValues : function(_record) {
				this.getForm().loadRecord(_record);
			},

			/**
			 * 重置表单
			 */
			reset : function() {
				this.getForm().reset();
			}
		});